package com.suneee.cloud.admin.dao;

import java.util.List;
import java.util.Map;

import com.suneee.cloud.admin.entity.AdministratorBean;
import com.suneee.context.page.Page;
import com.suneee.orm.Dao;
import com.suneee.sso.admin.entity.Administrator;

public interface AdministratorDao extends Dao<Administrator, Integer>{

	
	/**
	 * 修改密码
	 * @param adminId
	 * @param password
	 * @param newPassword
	 */
	public void updPassword(String adminId, String newPassword);
	
	
	/**
	 * 获取管理员账号列表
	 * @param bean
	 * @return
	 */
	public Page<Map<String,Object>> list(AdministratorBean bean);
	
	
	/**
	 * 判断是否存在对象
	 * @param key
	 * @param value
	 * @return
	 */
	public boolean exists(String key, String value);
	
	/**
	 * 判断是否存在管理员对象，根据账号查询 
	 * @param account
	 * @return
	 */
	public boolean existsAccount(String account);
	
	
	/**
	 * 判断是否存在管理员对象，根据账号查询 
	 * @param account
	 * @return
	 */
	public boolean existsAdmin(String enterpriseCode);
	
	/**
	 * 判断当前企业下是否存在此账号
	 * @param enterpriseCode
	 * @param account
	 * @return
	 */
	public boolean existsAccount(String enterpriseCode,String account);
	
	public boolean existsAccountAdmin(String account);
	
	
	/**
	 * 删除企业下的所有账号
	 * @param enterpriseCode
	 */
	public void deleteAccount(String enterpriseCode);
	
	/**
	 * 获得指定企业下的所有账号
	 * @param enterpriseCode
	 */
	public List<Administrator> getListByEnterpriseCode(String enterpriseCode);
}
